package portal.vo;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;


public class CompraVO implements AbstractVO{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	/**
     * Formato de la fecha
     */
    private static final String FORMATO_FECHA = "yyyy-MM-dd HH:mm:ss";

    /**
     * Formateador de la fecha
     */
    private static SimpleDateFormat fechaFormater = new SimpleDateFormat(
        FORMATO_FECHA);
	
	private Long id;
	private List<ItemVO> items = new ArrayList<ItemVO>();	
	private String estadoCompra;
	private UsuarioVO usuarioCompra;
	private Date fechaCompra;
	
	
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public List<ItemVO> getItems() {
		return items;
	}

	public void setItems(List<ItemVO> items) {
		this.items = items;
	}

	public String getEstadoCompra() {
		return estadoCompra;
	}

	public void setEstadoCompra(String estadoCompra) {
		this.estadoCompra = estadoCompra;
	}

	public UsuarioVO getUsuarioCompra() {
		return usuarioCompra;
	}

	public void setUsuarioCompra(UsuarioVO usuarioCompra) {
		this.usuarioCompra = usuarioCompra;
	}

	public Date getFechaCompra() {
		return fechaCompra;
	}

	public void setFechaCompra(Date fechaCompra) {
		this.fechaCompra = fechaCompra;
	}
	
	
	public String getFechaCompraString() {
		if (this.getFechaCompra() != null) {
            return fechaFormater.format(this.getFechaCompra());
        } else {
            return "";
        }
	}
	
	public double getMontoTotal(){
		ItemVO item = null;
		double total = 0;
		Iterator<ItemVO> it = items.iterator();
		while (it.hasNext()) {
			item = it.next();
			total += item.getItemProducto().getPrecio().doubleValue() * item.getCantidad();
		}
		return total;
	}

	
	

}
